/* #ifdef H5 */
import fetchJsonp from 'fetch-jsonp'

/* #endif */

import qs from 'qs'
import request from '@/utils/request/index.js'

/**
 *跨域请求三方接口
 * @param {*} url 请求地址
 * @param {*} params 请求参数
 * @param {*} callback 回调函数名称
 * @returns 返回值
 * 小程序直接使用请求request, h5使用jsonp
 */

export function jsonp(url, params, callback = 'callback') {
  let result = null
  /* #ifdef H5 */
  result = new Promise((resolve, reject) => {
    fetchJsonp(`${url}?${qs.stringify(params)}`, { jsonpCallback: callback }).then((response) => {
      return response.json()
    }).then((response) => {
      resolve(response)
    })
  })

  /* #endif */

  /* #ifndef H5 */
  result = request.get(url, params)
  /* #endif */

  return result
}
